1. Field of the Invention
The present invention is generally in the field of signal coding. In particular, the present invention is in the field of speech coding and specifically in application where packet loss is an important issue during voice packet transmission.
2. Background Art
Traditionally, all parametric speech coding methods make use of the redundancy inherent in the speech signal to reduce the amount of information that must be sent and to estimate the parameters of speech samples of a signal at short intervals. This redundancy primarily arises from the repetition of speech wave shapes at a quasi-periodic rate, and the slow changing spectral envelop of speech signal.
The redundancy of speech wave forms may be considered with respect to several different types of speech signal, such as voiced and unvoiced. For voiced speech, the speech signal is essentially periodic; however, this periodicity may be variable over the duration of a speech segment and the shape of the periodic wave usually changes gradually from segment to segment. A low bit rate speech coding could greatly benefit from exploring such periodicity. The voiced speech period is also called pitch and pitch prediction is often named Long-Term Prediction. As for the unvoiced speech, the signal is more like a random noise and has a smaller amount of predictability.
In either case, parametric coding may be used to reduce the redundancy of the speech segments by separating the excitation component of the speech from the spectral envelop component. The slowly changing spectral envelope can be represented by Linear Prediction (also called Short-Term Prediction). A low bit rate speech coding could also benefit a lot from exploring such a Short-Term Prediction. The coding advantage arises from the slow rate at which the parameters change. Yet, it is rare for the parameters to be significantly different from the values held within a few milliseconds. Accordingly, at the sampling rate of 8 k Hz or 16 k Hz, the speech coding algorithm is such that the nominal frame duration is in the range of ten to thirty milliseconds. A frame duration of twenty milliseconds seems to be the most common choice. In more recent well-known standards such as G.723, G.729, EFR or AMR, the Code Excited Linear Prediction Technique (“CELP”) has been adopted; CELP is commonly understood as a technical combination of Coded Excitation, Long-Term Prediction and Short-Term Prediction. Code-Excited Linear Prediction (CELP) Speech Coding is a very popular algorithm principle in speech compression area.
FIG. 1 shows the initial CELP encoder where the weighted error 109 between the synthesized speech 102 and the original speech 101 is minimized by using a so-called analysis-by-synthesis approach. W(z) is the weighting filter 110. 1/B(z) is a long-term linear prediction filter 105; 1/A(z) is a short-term linear prediction filter 103. The code-excitation 108, which is also called fixed codebook excitation, is scaled by a gain Gc 107 before going through the linear filters.
FIG. 2 shows the initial decoder which adds the post-processing block 207 after the synthesized speech.
FIG. 3 shows the basic CELP encoder which realized the long-term linear prediction by using an adaptive codebook 307 containing the past synthesized excitation 304. The periodic information of pitch is employed to generate the adaptive component of the excitation. This excitation component is then scaled by a gain Gp 305 (also called pitch gain). The two scaled excitation components are added together before going through the short-term linear prediction filter 303. The two gains (Gp and Gc) need to be quantized and then sent to the decoder.
FIG. 4 shows the basic decoder, corresponding to the encoder in FIG. 3, which adds the post-processing block 408 after the synthesized speech.
Long-Term Prediction plays very important role for voiced speech coding because voiced speech has strong periodicity. The adjacent pitch cycles of voiced speech are similar each other, which means mathematically the pitch gain Gp in the following excitation express is very high,e(n)=Gp·ep(n)+Gc·ec(n)  (1)where ep(n) is one subframe of sample series indexed by n, coming from the adaptive codebook 307 which consists of the past excitation 304; ec(n) is from the coded excitation codebook 308 (also called fixed codebook) which is the current excitation contribution. For voiced speech, the contribution of ep(n) from the adaptive codebook could be dominant and the pitch gain Gp 305 is around a value of 1. The excitation is usually updated for each subframe. Typical frame size is 20 milliseconds and typical subframe size is 5 milliseconds. If the previous bit-stream packet is lost and the pitch gain Gp is high, the incorrect estimate of the previous synthesized excitation could cause error propagation for quite long time after the decoder has already received the correct bit-stream packet. The partial reason of this error propagation is that the phase relationship between ep(n) and ec(n) has been changed due to the previous bit-stream packet loss. One simple solution to solve this issue is just to completely cut (remove) the pitch contribution between frames; this means the pitch gain Gp is set to zero in the encoder. Although this kind of solution solved the error propagation problem, it sacrifices too much the quality when there is no bit-stream packet loss or it requires much higher bit rate to achieve the same quality. The invention explained in the following will provide a compromised solution.